home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Atari Mega Archive 1
/
Atari Mega Archive - Volume 1.iso
/
lists
/
gem
/
l_1199
/
1103
< prev
next >
Wrap
Internet Message Format
|
1994-08-27
|
2KB
From: mforget@elfhaven.ersys.edmonton.ab.ca (Michel Forget)
Subject: Re: Gem List
Date: Tue, 26 Jul 1994 12:13:10 -0600
Precedence: bulk
Hello Daniel,
>typedef struct window_owners
>{
> int handle;
> int owner;
>} WOWNERS;
>
>WOWNERS owned_winds[20]; /* Some TOS versions allow more than 7 winds */
This is not a good approach. It limits the number of windows to 20.
MultiTOS can have many more than that, and so can Geneva. A much
better (though confusing) solution is to use a linked-list, or a
dynamically allocated array. That way the list can grow indefinitely.
>Or you could just bypass form_keybd altogether.
I have said this before, but I'll say it again. If you bypass objc_edit()
or form_keybd(), then you LOSE the enhancements that the user installs
in the AUTO folder. For example, LetEmFly allows cut/copy/paste from/to
editable text fields. If you windowed dialog library does not, but you
still use form_keybd()/objc_edit() then the user can still use them,
even from inside a windowed dialog box. There are situations where you
might NEED to replace one of these functions, but unless you absolutely
have to you should leave them the way they are.
>to reposition the object, keeping in mind that you have to set a NULL
>character in front of the character where you wish to position the cursor.
>Once you do that, turn the cursor on. You will have the cursor repositioned.
>VOILA! :-)
What? I'm not positive, but I do not remember setting any character to
NULL. I think (not positive, but I could check later) that I turned the
editable field off, then back on again with a different position index.
That was all. Why set the previous character to NULL?
--
Michel Forget \\ mforget@elfhaven.ersys.edmonton.ab.ca //
Electric Storm Software \\ ess@tibalt.supernet.ab.ca //
PGP Public Key Finger. = 1F C0 D3 FE 40 51 7F 47 F3 4A C6 AD 6E 02 71 85